// import service from '@/utils/request'
import { get, post, postFormData, postWithParams, getBlob } from '@/utils/request'
//测试井id：8cf568aa-2a22-11ef-842d-6045bd5ed560
//获取井详情配置信息
export function getConfig(wellId) {
  return get(`/wellShowManage/getByWellId?wellId=${wellId}`, {})
}
//获取当前井tag
export function getWellTag(wellId) {
  return post(`/wellTagManage/getListByWellId?wellId=${wellId}`, {})
}
//获取tag类型
export function getTagType() {
  return post(`/wellTagManage/getTagTypeList`, {})
}
//编辑井详情信息
export function editConfig(data) {
  return post('/wellShowManage/update', data)
}
//新增井详情信息
export function addConfig(data) {
  return post('/wellShowManage/add', data)
}
//导入井详情显示配置
export function importConfig(data) {
  return post('/wellShowManage/import', data)
}
//导出井详情显示配置
export function exportConfig(data) {
  return post('/wellShowManage/export', data)
}
// 查询井历史
export function queryWellHistory(data) {
  return postFormData('/wellManage/queryWellHistory', data)
}

// 获取井实时数据
export function getWellRealData(data) {
  return get('/well/getWellRealData', data)
}

// 获取tag类型折线图
export function getTrendByTagType(data) {
  return postWithParams("/well/getTrendByTagType", data);
}
// 获取tagName折线图
export function getTrendByTagName(data) {
  return postWithParams("/well/getTrendByTagName", data);
}
// 仅通过其他井tagName获取折线图
export function getTrendOnlyByTagName(data) {
  return postWithParams("/well/getTrendOnlyByTagName", data);
}
// 仅通过其他井tagName获取折线图
export function getTrendTimeValueByTagName(data) {
  return postWithParams("/well/getTrendTimeValueByTagName", data);
}
// 导出井历史
export function exportWellHistory(wellId) {
  return getBlob(`/wellManage/exportWellHistory?wellid=${wellId}`)
}

// 上传文件
export function uploadFile(data) {
  return postFormData('/file/upload', data)
}

// 下载文件
export function downloadFile(filePath) {
  return getBlob(`/file/download?filePath=${filePath}`, {
    'headers': { 'Content-Type': 'application/octet-stream;charset=UTF-8' },
  })
}

// 获取井列表
export function queryList(data) {
  return post('/wellManage/queryList', data)
}

// 获取井深结构的缩略图路径
export function getImageUrl(wellId) {
  return get(`wellShowManage/getImageUrl?wellId=${wellId}`)
}

// 复制井身结构
export function copyWell(data) {
  return post('/wellShowManage/copy', data)
}

//ESP Trend导出
export function exportEspTrend(wellId, startTime, endTime) {
  const url = `well/exportEspTrend/v2?wellId=${wellId}&startTime=${startTime}&endTime=${endTime}`;
  return getBlob(url);
}

//单点位趋势图导出 - 按点位名
export function byTagName(wellId, startTime, endTime, tagName) {
  const url = `well/exportOneTagTrend/byTagName?wellId=${wellId}&startTime=${startTime}&endTime=${endTime}&tagName=${tagName}`;
  return getBlob(url);
}

//单点位趋势图导出 - 按点位类型
export function byTagType(wellId, startTime, endTime, tagType) {
  const url = `well/exportOneTagTrend/byTagType?wellId=${wellId}&startTime=${startTime}&endTime=${endTime}&tagType=${tagType}`;
  return getBlob(url);
}

// 设置井趋势图配置信息
export function setWellTrendConfig(data) {
  return post('/well/setWellTrendConfig', data)
}

// 设置井趋势图配置信息
export function getWellTrendConfig(data) {
  return post('/well/getWellTrendConfig', data)
}

// 设置井趋势图配置信息
export function getAllWellTag(data) {
  return post('/wellTagManage/getAllWellTag', data)
}

// 根据名称模糊查询tagList
export function getAllTagByName(data) {
  return post('wellTagManage/getAllTagByName', data)
}

// 根据名称模糊查询tagList
export function wellTagManageAdd(data) {
  return post('wellTagManage/add', data)
}

// 获取井详情页面右上角上一次生产时间信息
export function getWellInfoProductionLast(data) {
  return post('well/getWellInfoProductionLast', data)
}

//获取配置信息列表
export function getConfigList(data) {
  return get(`/userTrendConfig/getConfigList`, data)
}


// 保存配置信息
export function saveConfig(data) {
  return post('/userTrendConfig/saveConfig', data)
}


// 获取偏好项列表
export function getFavoriteList() {
  return get('/userTrendConfig/getList')
}

// 删除偏好项
export function deleteFavorite(data) {
  return post('/userTrendConfig/delete', data)
}


//公式获取列表
export function formulaManageList(data) {
  return get('/formulaManage/getList', data)
}

//公式新增或修改
export function addOrUpdate(data) {
  return post('/formulaManage/addOrUpdate', data)
}

// 获取公式下拉框
export function getFormulaDrop(data) {
  return get('/formulaManage/getFormulaDrop', data)
}
//井下拉
export function wellManageGetAll(data) {
  return post('/wellManage/getAll', data)
}

export function formulaManageDelete(data) {
  return post('/formulaManage/delete', data)
}

export function getPadDrop(data){
  return get('/padManage/getPadDrop',data)
}
export function getAllTagByKeyword(data){
  return get('/wellTagManage/getAllTagByKeyword',data)
}
